﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Pavilion.DesignerTool.ViewTools.ConnectableListBox;

namespace Pavilion.DesignerTool
{
    public class EnvironmentWrapper : IConnectableItemContainer
    {
        public Pavilion.GameTools.EnvironmentTool EnvironmentTool { get; set; }

        public NotifiableCollection<IConnectableItem> ConnectableItems { get; private set; }
        public NotifiableCollection<IConnectonator> Connectonators { get; private set; }

        //public EnvironmentWrapper()
        //{
        //    ConnectableItems = CreatePointWrappers();
        //    Connectonators = CreateLineWrappers();


        //}

        //private List<IConnectonator> CreateLineWrappers()
        //{
        //    List<LineWrapper> lineWrappers = new List<LineWrapper>();

        //    foreach (var nodeWrapper in nodeWrapperCollection)
        //    {
        //        linkWrappers.AddRange(CreateLinkWrappers(nodeWrapper, nodeWrapperCollection, nodeWrapper.Node.LinkCollection));
        //    }

        //    return lineWrappers;
        //}

        //private List<IConnectableItem> CreatePointWrappers()
        //{
        //    List<PointWrapper> pointWrappers = new List<PointWrapper>();

        //    EnvironmentTool

        //        //Where I left off: We need to create an environment that contains all points.
        //        //The Environment will contain a list of lineVectors.
        //}


        public object Data
        {
            get { throw new NotImplementedException(); }
        }


        public System.Windows.Point Position
        {
            get
            {
                throw new NotImplementedException();
            }
            set
            {
                throw new NotImplementedException();
            }
        }


        public string Name
        {
            get
            {
                throw new NotImplementedException();
            }
            set
            {
                throw new NotImplementedException();
            }
        }
    }
}
